After a user sends a business service processing request to a business service server (e.g., a network-side application server in a communications network or a website server on the Internet), the user usually wishes to periodically learn the current processing status of the business service (i.e., the processing status information of this business service) as the business service server is processing the business service processing request. For example, the user would like to know the current stage or progress of the processing of the business service.
Conventionally, a user may learn of the business service processing status information of business services at which he or she had requested a business service processing by using a user terminal with a client-end application executing at the user terminal to exchange information with the business service server. FIG. 1 is an example of such a process.
At 101, the client confirms the business service identifier for a business service whose business service processing status information is requested by a user. For example, each business service is associated with a business service identifier.
At 102, the client determines that the next information query time is the time after a set query interval time length from the time associated with either a previous query for business service processing status information or a start time associated with processing a request associated with the business service identifier. The next information query time is the time at or after which the client will query the business service server to obtain the business service processing status information. Typically, the set query interval time length is a static time period that is configured by a system administrator. The client may send the query with the business service identifier to receive the business service processing status information associated with the business service identifier. The business service processing status information indicates the progress of the processing.
At 103, the client determines whether the current time matches or is past the next information query time. In the event that the current time matches or is past the next information query time, control is transferred to 104. Otherwise, control is transferred to 103.
At 104, the client sends an information query request to the business service server. The information query request includes the business service identifier associated with the business service whose status is requested.
At 105, after receiving the information query request, the business service server extracts the business service identifier that is included in the request and uses the business service identifier to determine a current business service processing status information of the business service to include in an information query response to the client. The business service server includes the current business service processing status information into an information query response and sends the information query response to the client.
At 106, after receiving the information query response, the client extracts the current business service processing status information included in the information query response and compares the extracted information query response with a stored business service processing status information. The stored business service processing status information was received in response to a previous information query request sent by the client and is stored locally at the client.
At 107, it is determined whether the business service processing status of the business service has changed since the previous information query request based on the comparison between the extracted information query response and the stored business service processing status information. If the extracted information query response and the stored business service processing status information are the same, then it means that the business service processing status of the business service has not changed since the previous information query request and control is transferred to 102. If the extracted information query response and the stored business service processing status information are not the same, then control is transferred to 108.
At 108, it is determined whether processing of the business service associated with the business service identifier has completed based on the extracted business service processing status information. In the event that the business service associated with the business service identifier has completed, then the process ends. Otherwise, control is transferred to 102. The business service processing status information extracted from the information query response indicates the current progress of the business service and whether processing has completed.
In the business service processing status information querying solution described above in process 100, the query time intervals are set to be relatively short time lengths so that the user can promptly learn the most recent business service processing status information after the business service processing status information has changed. Thus, it is by frequently querying the server for business service processing status information that changes in the processing status of a business service are detected and presented to the user.
However, changes to business service processing status information during the process of processing a business service may not be at all frequent. Therefore, in the information querying solution described above, each subsequent business service processing status information that is obtained from the business service server is often the same as the last query result. As a result, in the solution described above, the client expends many resources querying the business service server unnecessarily.